到了大二下,那時候有一堂系選修叫〈Web前端開發〉,班上一票人都去修,也聽說教得很好的什麼,所以我也被說服著去上了。
那堂課是業師上課,他從很初階的 HTML 跟 CSS 開始上,可能是因為經驗豐富,他的課有條有理,從簡單到複雜的過程都很好理解。
因為用 HTML 跟 CSS,瀏覽器一打開就可以看到你剛剛打的字、設的顏色、連結的圖片。這樣的成就感其實出乎意料的高,對一個不會寫程式的人,用自己最熟悉的瀏覽器打開就能看到自己寫的東西,才真的有寫程式的感覺。
相對於複雜的編譯器看不懂的指令、eclipse 一堆按鈕用不著也看不懂的軟體,HTML 最簡單可以用記事本,進階一點可以用文字編輯器 Sublime Text 或是 VS Code。
如果說要怎麼讓一個排斥程式的人開始寫程式,大概就是它了吧。
〈Web前端開發〉的期中之前都過著非常歡樂的日子,每次上課都教切版、或是其他 hover 之類的小功能等等,日子非常愜意,也過得很有成就感。
殊不知,期中後就開始踏入了 JavaScript 的 Level Up 課程,開始要寫邏輯類的東西。老師帶著我們找政府的開放資料集套在自己寫的樣板上,到這邊就開始不行了...,期末要交的是分組的專案報告,我們這組做了公車的即時路線更新,當然我是一點貢獻都沒有(俗稱的豬隊友)。
我才發現,寫程式最重要的還是邏輯,HTML 跟 CSS 之所以這麼好學是因為不用什麼邏輯,展示性又夠強。但真的要能讓整個網頁跟有生命的一樣持續更新,要靠的還是 JavaScript 的功能。
每個語言的語法雖然都不一樣,,但是規則都大同小異,能夠貫徹每種語言的只有「邏輯」。
Q:規則是一次只能印一個,當我有五樣東西要印的時候呢?
A:一次印一個印五次
這用看的固然很簡單,但在寫程式的時候必須先發現規則就是一次只能印一個,不然試了老半天發現怎麼都印不出來的時候,才知道是自己連規則都沒搞懂。明白規則後,還要再想到解決問題的方法:一個印一個印多次。像上面的舉例一次印五個跟一次印一個印五次,如果不能理解差別的話,那可能就是邏輯不太好吧 xD